The Performance of Message-passing Using Restricted Virtual Memory Remapping

نویسندگان

  • Shin-Yuan Tzou
  • David P. Anderson
چکیده

DASH is a distributed operating system kernel. Message-passing (MP) is used for local communication, and the MP system uses virtual memory (VM) remapping instead of software memory copying for moving large amounts of data between virtual address spaces. Remapping eliminates a potential communication bottleneck and may increase the feasibility of moving services such as file services to the user level. Previous systems that have used VM remapping for message transfer, however, have suffered from high per-operation delay, limiting the use of the technique. The DASH design reduces this delay by restricting the generality of remapping: a fixed part of every space is reserved for remapping, and a page’s virtual address does not change when it is moved between spaces. We measured the performance of the DASH kernel for Sun 3/50 workstations, on which memory can be copied at 3.9 MB/s. Using remapping, DASH can move large messages between user spaces at a rate of 39 MB/s if they are not referenced and 24.8 MB/s if each page is referenced. Furthermore, the peroperation delay is low, so VM remapping is beneficial even for messages containing only one page. To further understand the performance of the DASH MP system, we broke an MP operation into short code segments and timed them with microsecond precision. The results show the relative costs of data movement and the other components of MP operations, and allow us to evaluate several specific design decisions.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Performance Evaluation of the Dash Message-passing System

DASH is a distributed operating system kernel. Message-passing (MP) is used for local communication, and the MP system uses virtual memory remapping instead of software copying for moving large amounts of data between virtual address spaces. This design eliminates a bottleneck in high-performance communication, and increases the feasibility of moving services such as file services into user spa...

متن کامل

A Message-Passing Distributed Memory Parallel Algorithm for a Dual-Code Thin Layer, Parabolized Navier-Stokes Solver

In this study, the results of parallelization of a 3-D dual code (Thin Layer, Parabolized Navier-Stokes solver) for solving supersonic turbulent flow around body and wing-body combinations are presented. As a serial code, TLNS solver is very time consuming and takes a large part of memory due to the iterative and lengthy computations. Also for complicated geometries, an exceeding number of grid...

متن کامل

A Comparison of Shared Virtual Memory and Message Passing Programming Techniques Based on a Finite Element Application

This paper describes the methods used and experiences made with implementing a nite element application on three diierent parallel computers with either message passing or shared virtual memory as the programming model. Designing a parallel nite element application using message-passing requires to nd a data domain decomposition to map data into the local memory of the processors. Since data ac...

متن کامل

Design and Implementation of NX Message Passing Using Shrimp Virtual Memory Mapped Communication

This paper describes the design, implementation and performance of the NX message-passing interface on the Shrimp multicomputer. Our implementation exploits Shrimp's virtual memory-mapped communication facility. Unlike traditional methods, our implementation performs buuer management at user level without using a special message-passing processor, and requires no CPU intervention upon message a...

متن کامل

Fortran M: A Language for Modular Parallel Programming

Fortran M is a small set of extensions to Fortran 77 that supports a modular approach to the design of message-passing programs. It has the following features. (1) Modularity. Programs are constructed by using explicitly-declared communication channels to plug together program modules called processes. A process can encapsulate common data, subprocesses, and internal communication. (2) Safety. ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • Softw., Pract. Exper.

دوره 21  شماره 

صفحات  -

تاریخ انتشار 1991